㈠ c語言中 那個格式控制字元串 可以輸入數字和字元
scanf():通過格式控制符%s輸入字元串。除了字元串,scanf()還能輸入其他類型的數據。scanf()讀取字元串時以空格為分隔,遇到空格就認為當前字元串結束了,所以無法讀取含有空格的字元串。
gets():直接輸入字元串,並且只能輸入字元串。gets()認為空格也是字元串的一部分,只有遇到回車鍵時才認為字元串輸入結束,所以,不管輸入了多少個空格,只要不按下回車鍵,對gets()來說就是一個完整的字元串。換句話說,gets()用來讀取一整行字元串。
(1)數字加字元合法嗎c語言擴展閱讀
scanf()和gets()的使用:
#include<stdio.h>
intmain(){
charstr1[30]={0};
charstr2[30]={0};
charstr3[30]={0};
//gets()用法
printf("Inputastring:");
gets(str1);
//scanf()用法
printf("Inputastring:");
scanf("%s",str2);
scanf("%s",str3);
printf(" str1:%s ",str1);
printf("str2:%s ",str2);
printf("str3:%s ",str3);
return0;
}
㈡ C語言中字元和數字加減問題
「/」「*」是同一級的所以按順序計算,先是2/6,又由於兩者均是整型則計算結果取整型部分0
字元類型的7和0被強制轉換成整型7和0 .最終結果是7
㈢ C語言中字元串可以是數字嗎
數字可以是字元串類型,如「123」以字元串形式存放在代碼區,擁有代碼區的只讀屬性,建議鞏固一下C基礎,歡迎追問或加Q交流
㈣ c語言里字元加字元得到的是數字么 字元加字元得到的也是數字么 那字元串加字元串呢
字元加字元是數字
字元串不能加字元串
㈤ 問幾道關於C語言合法字元和數字的問題
1、D \n是轉義字元,表示換行
2、C -10不是八進制或十六進制;0開頭的是八進制,數值范圍是0~7,所以0abc是錯的;0a12同理
3、D、0開頭的是八進制,數值范圍是0~7,所以0f是錯的;-2.5不是1~3位的整數,
所以3.9E-2.5是錯的,0開頭的是八進制,數值范圍是0~7,所以0a是錯的;
㈥ C語言,一個字元和數字相加,一個奇怪的問題,求大神
char類型表示一個有符號數的范圍為:-128到127
z的ascii值為122
122+6=128
在內存中,128用一個位元組表示就是
1000 0000
而這個數值,按整型輸出時,表示的就是-128(補碼)
解決你的問題,只需要將ch定義成無符號數就可以了
unsigned char ch ;
㈦ c語言把數字字元串中的數字相加的程序
代碼如下:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main()
{
char str[100];
char buf[10];
int i;
int n = 0;
bool flag = 0;
int j = 0;
//gets(str);
scanf("%s", str);
for (i = 0; i != strlen(str); ++ i)
{
if (str[i] >= '0' && str[i] <= '9')
{
buf[j] = str[i];
j++;
flag = 1;
}
else if (flag)
{
n += atoi(buf);
memset(buf,0,10);//清空緩存區
flag = 0;
j = 0;
}
}
printf("%s",buf);
printf("%d ", n);
}
(7)數字加字元合法嗎c語言擴展閱讀
(C語言)常見字元函數和字元串函數
1、strlen
功能:計算字元串長度,不包含』 』
返回值:返回字元串的字元數
說明:strlen() 函數計算的是字元串的實際長度,遇到第一個』 』結束;參數指向的字元串必須以 』 『結束。函數返回值一定是size_t ,是無符號的。如果你只定義沒有給它賦初值,這個結果是不定的,它會從首地址一直找下去,直到遇到』 』停止。
sizeof返回的是變數聲明後所佔的內存數,不是實際長度,此外sizeof不是函數,僅僅是一個操作符,strlen()是函數。
2、strcpy
功 能: 將參數src字元串拷貝至參數dest所指的地址
返回值: 返回參數dest的字元串起始地址
說明:源字元串必須以』 』結束。會將源字元串的』 』拷貝到目標空間。目標空間必須可變。如果參數dest所指的內存空間不夠大,可能會造成緩沖溢出的錯誤情況,在編寫程序時需特別留意,或者用strncpy()來取代。
㈧ c語言中數字和字元相加結果是什麼
char c='a' ;
c=c+1 ;
printf("%c %d\n", c , c ); //輸出b 98
字元在計算機中是按字元的ascii值存儲的,實際上就是個整數,而輸出時,按不同的格式串可得到相應的顯示:%c 按字元輸出 %d按整數輸出
㈨ 什麼是C語言中合法字元合法字元有何規定『\97』是不是
\97不合法,'\0xx'代表8進制轉義字元,既然是8進制,不能出現數字9
資料很多啊 http://wenku..com/view/b0f81a2a192e45361066f5ed.html
㈩ C語言 數字字元相加怎麼實現
#include<stdio.h>
voidmain(){charas[]={"11"},bs[]={"1"};inta,b,c,i;
i=a=0;while(as[i]!=0){a*=10;a+=as[i]-'0';i++;}
i=b=0;while(bs[i]!=0){b*=10;b+=bs[i]-'0';i++;}
c=a+b;
printf("%s+%s=%d ",as,bs,c);
}