‘壹’ c语言简单问题
答案确实是B
因为存储的是字符串,系统会在存储结束后自动增加'\n',因此系统存储“good!”的时候其实是占用了6个字节。如果A答案改为
char str[6]="good!" 那就完全正确了。
而B答案由于没有指明数组容量,系统在存储的时候会自动确定应该分配的字节数,即分配6个字节存储,因此这种定义赋值方法也是正确的。
楼主大概是刚学C语言吧,接触多了自然就懂了,希望我的解释能帮你早点搞明白问题。
‘贰’ C语言程序如下,输出为什么是goodgood!
sp="to";
这里的"to"是一个字符串饥旅衫常量,就跟int类型常量是一样的(比如写一个100),上面那句烂腔话的意思是sp指向"to"这个字镇旅符串常量的地址。
也就是说sp先指向数组s的地址,后面又变更成字符串常量"to"的地址。数组s没有发生变化,所以还是打印goodgood!了。
‘叁’ C语言如何识别文件中的左右引号(“”,‘’),如何在文件中输出左右引号
c语言如何输出引号:c语言输出引号需要使用转义字符“\”,即“
\"
”。
带引号输出"good"代码如下:
#include
int main(){
printf("\" good \" ");
return 0;
}所有的转义字符和所对应的意义:
‘肆’ c语言printf怎么输出n个空格
c语言printf输出n个空格:
printf("%*s",n,"");
printf("Good");
后面加了输出Good是为了看清楚输出了n个空格
‘伍’ C语言里%g,g是哪个单词的开头的
C语言里%g,g是单词general的开头首字母,这个单词是一个形容词,中文意思为普遍的,通用的,一般的。在C语言中%g的格式是用来以通用格式输出一个浮点数。由系统来选择,是以%f还是%e输出格式输出六位有效数字,不输出小数尾数的0。
‘陆’ c语言,编写程序,输入1、2、3、4,分别显示excellent、good、pass、fail。
#include<stdio.h>
int main()
{
int num;
printf("Plaese Input: ");
scanf("清液%d",&num);
switch(num)
{
case 1:
printf("excellent\答态物n");
break;
case 2:
printf("闭橘good\n");
break;
case 3:
printf("pass\n");
break;
case 4:
printf("fail\n");
break;
default:
break;
}
return 0;
}
‘柒’ C语言题 输入一个整数,如果是1,输出Good morning 如果是2输出Good aftern
#include<stdio.h>
main()
{
int input;
printf("请输入拿察一个整数:\n");
scanf("%d"消弯茄,&input);
if(input==1)
printf("Good morning\n");
else if(input==2)
printf("Good afternoon\n");
else if(input==3)
printf("Good evening\闹汪n");
else if(input==4)
printf("Good nignt\n");
else
printf("Bye-bye\n");
}
‘捌’ good属于C语言中哪个scope
good 不是C语言关键字,所以,它是用户自定义 的标识符。一般是先在当前函数是查找,再看是不是全局变量,或外部变量。
‘玖’ c语言,说下原因,谢谢了
/* 我觉得嘛,你的程序不会有编译错误 */
s[20] = "goodgood!"; // s指向一个字符串"goodgood!"
*sp = s; // sp指向s所指向的地方,就是sp指向了"goodgood!"
sp = sp + 2; //sp往右移动了两位,sp指向了"odgood!"
sp = "to"; // sp改变了指向,指到了"to"
puts(s); //输出s
这5条语句,s始终指向"goodgood!"谈兆,没有改变返李指向,sp跟s不是同一个指针,含世租sp改变指向不影响s的指向,而且s是数组,根本不能改变指向,所以输出为"goodgood!"