这个C语言哪里错了

这个C语言哪里错了,为什么执行不出来?

错误原因:变量类型错误,输出语句类型不匹配。
猜想一下,你是要输出两个短句。有以下错误:
错误一,短语要储存在字符数组或字符串数组中,不能存放在字符变量中。你用char定义变量是错误的,应该用类似char*a;或char a[100];定义才行。看你的题目,用字符指针比较好,容易赋值。
错误二,用scanf语句输出字符串时,要用%s格式,不能用%c格式,%c是输出单个字符的格式。所以你的输出语句中的输出格式不正确。
最简单的改正方法:
1、char cChar1;改为char*cChar1;
2、int ilnt1;改为char*ilnt1;
3、两个printf语句中的%c都改为%s。
就能输出两个短句了。
有什么问题请留言。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-01-22
定义里的char是字符型变量,int是整型变量,而双引号里面的内容是字符串,无法赋值给字符型和或整型,所以最后输出的语句无法输出正确的结果。
(如有帮助,烦请点采纳,谢谢!)
第2个回答  2019-01-22
#include <stdio.h>
int main()
{
    char* cChar1;
    char* ilnt1;
    cChar1 = "Fine day";
    ilnt1 = "Fine day";
    printf("%s\n", cChar1);
    printf("%s\n", ilnt1);
    return 0;
}

第3个回答  2019-01-23
cChar赋值的时候应该用'c'这样,赋值一个字符;iInt1赋值的时候应该是iInt1=10这样赋值一个整数,输出iInt1的时候应该用%d
第4个回答  2019-01-22
两个指针都指向字符长量区的地址,也就是数据区,不允许修改,只能读,不能写。不像int a=10,这是开辟空间,数据存在内存栈区,可以读写,原因就是%c是输出一个字符,应该改成%s,输出一个字符串
相似回答