首页 > 技术文章 > 字符数组+数组复习

Z1188G 2021-01-17 17:39 原文


遍历数组的条件
str[i],用元素内容来判断,如果内容为0,就不符合条件,非零则循环继续
str[i]!='\0',用结束标志来判断,作为循环的条件
选项C错误的原因:应该使用==而非=,前者是判断相等,后者是赋值

字符数组的赋值



解析;
每个元素向右一列,最后一列换到第一列的实现
b[i][j+1]=a[i]jj<n-1,n-1表示最右列不能大于给定列数
b[i][0]=a[i][n]
i<m i控制行数,j控制列数,对应的控制条件分别为m,n

#include<stdio.h>
#include<ctype.h>
int main()
{
int num[26],i;
char c;
for(i=0;i<26;i++)
num[i]=0;//将数组所有元素全都初始化为0,以下标为标志直接查找
while(c=getchar()!='#')
if(isupper(c))
num[c-65]+=1;//用来统计每个大写字母出现的个数,c-65代表如果是大写字母,则ASCII码值和num数组的下标一致
for(i=0;i<26;i++)
if(num[i])
printf("%c:%d"),i+65,num[i]);
return 0;

}

哈希数组的使用
}

}

函数的调用!不需要返回类型和参数类型,只需要名称;
遍历数组的条件 str[i]

feedback[M]表示 40个学生打的等级 人数从1-40
count[N] 表示十个等级对应的票数 四十人,四十票,0-39
grade 表示等级
伪代码:
将四十个学生的投票等级(情况)存入数组
四十票对应的等级票数统计,将每个学生投的等级作为计数数组的下标,统计票数
输出不同等级对应的票数,由于等级从1-10,和对应的打星情况
++count[feedback[i]];
grade=1;
j<count[grade](j<对应等级的票数)

生成随机数所需要的库函数
stdlib.h
生成随机数 利用取余符号来控制取值范围
rand()%6+1;
为什么要加1,因为,对6取余数,生成的结果是0-5
使用srand(time(NULL));来生成随机种子

uploading-image-370380.png

count变量定义后要初始化
str[k+1]0||str[k+1]'\n'

推荐阅读