华汉基因铁汉生态:C语言判断题

来源:百度文库 编辑:高校问答 时间:2024/05/03 02:58:11
1、语句scanf(“%d\n”)表示输入一个十进制整数并换行。
2、由于函数scanf在接收变量时必须指定该变量在内存中的地址,因此有
scanf("%s",&str).
为什么我用scanf("%s",&str)与用scanf("%s",str)后再用printf("%s",str)输出结果一样.

1 错 应当是scanf(“%d\n”&x) x表示输入的数前边要定义
2 对 前边肯定有对str 无论他是不是个指针'&'后的都当一个地址对待

都错,
1.“\n”是表示换行,但是在输出中,如printf,输入是不能换行的。 int i; scanf("%d", &i);
2.一般在C语言中表示字符串用的是char str[100];或 char *str = (char *)malloc(100 * sizeof(char));即str一般都是指针型的,所以应该是scanf("%s", str);

楼上那位,取指针的地址,然后放入数据,那么可怕的事,亏你想的出来。指针是有地址的,但和字符串的地址可是两把事。

指针就是地址。

都错了 二楼是正确的