有如下的C语言的程序,
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a;
char b[100];
scanf("%d",&a);
itoa(a,b,2);
printf("%s",b);
}
①,您能说说。这个程序是起到什么作用的吗?能不能帮我注释一下,这个程序每步的含义呢?谢谢
②,这个程序char b[100]是否有限制什么?例如输入多大之后,这个程序就出错?
int a; //å®ä¹ä¸ä¸ªæ´ååéa
char b[100]; //å®ä¹ä¸ä¸ªå符æ°ç»bï¼å®æ100个å ç´ ï¼æ¯ä¸ªå ç´ é½æ¯charç±»å
scanf("%d",&a); //读åä¸ä¸ªæ´æ°å¹¶ä¿åå°åéaä¸ã%d表示读åæ´æ°ï¼è¥ä½¿ç¨%få表示读åfloatç±»åçæ°
itoa(a,b,2); //itoa()æ¯ä¸ä¸ªå½æ°ï¼æa转æ¢æ2è¿å¶çå符串ï¼ä¿åå°bä¸
printf("%s",b); //è¾åºa转æ¢æçäºè¿å¶æ°æ®
è¿ä¸ªç¨åºå°±æ¯æä¸ä¸ªæ´æ°è½¬æ¢æäºè¿å¶æ°ï¼ç¨å符串åèµ·æ¥å¹¶è¾åºã
char b[100]表示å¯ä»¥ä¿å100ä½çäºè¿å¶ä½ï¼å¦ææ´æ°è½¬æ¢ä¸ºäºè¿å¶æ°è¶ è¿100ä½ï¼åä¼æº¢åº
char b[100]; //å®ä¹ä¸ä¸ªå符æ°ç»bï¼å®æ100个å ç´ ï¼æ¯ä¸ªå ç´ é½æ¯charç±»å
scanf("%d",&a); //读åä¸ä¸ªæ´æ°å¹¶ä¿åå°åéaä¸ã%d表示读åæ´æ°ï¼è¥ä½¿ç¨%få表示读åfloatç±»åçæ°
itoa(a,b,2); //itoa()æ¯ä¸ä¸ªå½æ°ï¼æa转æ¢æ2è¿å¶çå符串ï¼ä¿åå°bä¸
printf("%s",b); //è¾åºa转æ¢æçäºè¿å¶æ°æ®
è¿ä¸ªç¨åºå°±æ¯æä¸ä¸ªæ´æ°è½¬æ¢æäºè¿å¶æ°ï¼ç¨å符串åèµ·æ¥å¹¶è¾åºã
char b[100]表示å¯ä»¥ä¿å100ä½çäºè¿å¶ä½ï¼å¦ææ´æ°è½¬æ¢ä¸ºäºè¿å¶æ°è¶ è¿100ä½ï¼åä¼æº¢åº
温馨提示:答案为网友推荐,仅供参考
第1个回答 2015-11-13
这个程序的作用是将输入的数转换成二进制数并输出,谢谢!
#include <stdio.h> //包含头文件
#include <stdlib.h> //包含头文件
int main()
{
int a; // 定义变量a
char b[100]; //定义字符数组b且只能存放99个字符,因为最后一个是结束符,加起来刚好100
scanf("%d",&a); //输入要转换的数字
itoa(a,b,2); //将输入的数转换成2进制数并存放到字符数组b中
printf("%s",b);//输出该数的二进制数
}
#include <stdio.h> //包含头文件
#include <stdlib.h> //包含头文件
int main()
{
int a; // 定义变量a
char b[100]; //定义字符数组b且只能存放99个字符,因为最后一个是结束符,加起来刚好100
scanf("%d",&a); //输入要转换的数字
itoa(a,b,2); //将输入的数转换成2进制数并存放到字符数组b中
printf("%s",b);//输出该数的二进制数
}
第2个回答 2015-11-13
这种程序每条都注释 你不如去看书.
scanf("%d",&a); 这句的功能是输入一个整数存入变量a
itoa(a,b,2); 百度itoa 就行了 上面讲得更清楚
itoa字面理解是 int to ascii 整数转字符串
printf("%s",b); 输出数组里的字符串.
char b[100] 它的限制是100 输入超过100后 有可能会出错.追问
scanf("%d",&a); 这句的功能是输入一个整数存入变量a
itoa(a,b,2); 百度itoa 就行了 上面讲得更清楚
itoa字面理解是 int to ascii 整数转字符串
printf("%s",b); 输出数组里的字符串.
char b[100] 它的限制是100 输入超过100后 有可能会出错.追问
谢谢。急求 的解答。谢谢。
第3个回答 2015-11-13
这个看上去就很明显啊,你们老师尽然看不出来?真的这这…… if(temp=0)这里表达错了,等于号不是“=”而是“==”。