5个回答
展开全部
错误原因:变量类型错误,输出语句类型不匹配。
猜想一下,你是要输出两个短句。有以下错误:
错误一,短语要储存在字符数组或字符串数组中,不能存放在字符变量中。你用char定义变量是错误的,应该用类似char*a;或char a[100];定义才行。看你的题目,用字符指针比较好,容易赋值。
错误二,用scanf语句输出字符串时,要用%s格式,不能用%c格式,%c是输出单个字符的格式。所以你的输出语句中的输出格式不正确。
最简单的改正方法:
1、char cChar1;改为char*cChar1;
2、int ilnt1;改为char*ilnt1;
3、两个printf语句中的%c都改为%s。
就能输出两个短句了。
有什么问题请留言。
猜想一下,你是要输出两个短句。有以下错误:
错误一,短语要储存在字符数组或字符串数组中,不能存放在字符变量中。你用char定义变量是错误的,应该用类似char*a;或char a[100];定义才行。看你的题目,用字符指针比较好,容易赋值。
错误二,用scanf语句输出字符串时,要用%s格式,不能用%c格式,%c是输出单个字符的格式。所以你的输出语句中的输出格式不正确。
最简单的改正方法:
1、char cChar1;改为char*cChar1;
2、int ilnt1;改为char*ilnt1;
3、两个printf语句中的%c都改为%s。
就能输出两个短句了。
有什么问题请留言。
展开全部
定义里的char是字符型变量,int是整型变量,而双引号里面的内容是字符串,无法赋值给字符型和或整型,所以最后输出的语句无法输出正确的结果。
(如有帮助,烦请点采纳,谢谢!)
(如有帮助,烦请点采纳,谢谢!)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
cChar赋值的时候应该用'c'这样,赋值一个字符;iInt1赋值的时候应该是iInt1=10这样赋值一个整数,输出iInt1的时候应该用%d
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
两个指针都指向字符长量区的地址,也就是数据区,不允许修改,只能读,不能写。不像int a=10,这是开辟空间,数据存在内存栈区,可以读写,原因就是%c是输出一个字符,应该改成%s,输出一个字符串
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询