刚刚开始学习C,要求输出26个字母的一个数组,我是这样写的……
#include<stdio.h>
int main(void)
{
int i;
char haha[26];
haha[1] = 'a';
for (i = 1; i <= 26; i++)
{
printf("%c", haha[i]);
}
return 0;
}
有劳好心的大佬给讲解下555
刚刚开始学习C,要求输出26个字母的一个数组,我是这样写的……
#include<stdio.h>
int main(void)
{
int i;
char haha[26];
haha[1] = 'a';
for (i = 1; i <= 26; i++)
{
printf("%c", haha[i]);
}
return 0;
}
有劳好心的大佬给讲解下555
因为你只给数组第一个变量赋值了,而且你的这个for只遍历了数组元素,没有对齐进行赋值,计算第i个字母可以这么算:'a' + i。
其次你的数组是26个变量,下标应该是从0-25,你这样写就算数组正确也会越界。正确写法可以参考这两个
//直接输出
#include<stdio.h>
int main(void) {
for (i = 0; i < 26; i++) {
printf("%c", 'a' + i);
}
return 0;
}
//先赋值数组
#include<stdio.h>
int main(void) {
int i;
char haha[26];
haha[0] = 'a';
for (i = 0; i < 26; i++) {
haha[i] = haha[0] + i;
printf("%c", haha[i]);
}
return 0;
}