C语言怎么定义多个数组储存字符串,又要求逐个输入?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言怎么定义多个数组储存字符串,又要求逐个输入?相关的知识,希望对你有一定的参考价值。
coursenum[10][m]?表示什么?coursenum[m][l0]呢?
需要准备的材料分别有:电脑、C语言编译器。
1、首先,打开C语言编译器,新建一个初始.cpp文件,例如:test.cpp。
2、在test.cpp文件中,输入C语言代码:
char a[10][100];
for (int i = 0; i < 10; i++)
gets(a[i]);
3、编译器运行test.cpp文件,此时成功定义了10个字符串的数组,并逐个进行了输入。
参考技术A 可以定义一个字符型二维数组,并依次输入。比如输入10个字符串,每个字符串最大长度不超过100,那么代码可以写作:
char str[10][100];
int i;
for(i = 0; i < 10; i ++)
scanf("%s", str[i]);//逐个输入。
for(i = 0; i < 10; i ++)
printf("%s\n", str[i]);//将输入的字符串依次输出以确认结果。 参考技术B #include *****
void main()
char coursenum[5][20];
int i;
for(i=0;i<20;i++) scanf(%s,s[i]);
多维类同。本回答被提问者采纳
C语言关于小数存入数组函数编写
float mun;
unsigned char tab[10];
mun的小数点在任意位置,
要求将小数mun保存在字符串tab的末尾(当然tab[9]=’\0‘)
void DispFloatNum(unsigned long Num, unsigned char DotPos,unsigned char Len)
unsigned char j,i,n;
unsigned char vec[10] = ' ', ' ', ' ', ' ', ' ', ' ', ' ',' ', ' ', ' ';
i = 9;
vec[9] = '\0';//在数组最后加上字符串结束标志
//将数字转换十进制并转换为字符按次序存入数组
do
vec[--i] = (char)(Num%10 + '0');
Num /= 10;
while(Num);
vec[9-i]='.';
j=i;
while(DotPos);
n=DotPos;
for(;n>0;n--)
vec[--j]=vec[i++];
j=i;
vec[i++]='.';
Len = 9-Len;
DispStr(vec+Len-1);
数据处理部分求修改!
第二位就是tab[1]=((int)(0.12345*100)%10
第三位就是tab[2]=((int)(0.12345*1000)%10
以此类推追问
你小数点你都没存进去!
追答我只是说了小数点后边的数怎么分离出来,并不是你这题的具体程序,而且你的题目叙述的不清楚,编程都不知道怎么编
参考技术A #include "stdio.h"#include "stdlib.h"
int main(void)
double x=34.743829109;
char a[19];
printf("%s\n",gcvt(x,5,a));//5确定有效数字长度且据其后数字四舍五入
return 0;
参考技术B //全局变量
float num;//float 小数点有效位是6~7位,我的编译器是7位,
char tab[10]=" ";//中间9个空格
unsigned long i,j;
main()
unsigned char ch,u;
while(1)
if(u==0)
num=0.1234567;u++;
else if(u==1)
num=0.1234;u++;
else if(u==2)
num=0.1;u=0;
i=10000000;
j=(unsigned long)(num*i);
i/=10;
for(ch=8;ch>0;ch--)
tab[ch]=(char)(j/i)+'0';
j%=i;
i/=10;
if((j==0)&&(i!=1))
ch--;
tab[ch]=0;
break;
以上是关于C语言怎么定义多个数组储存字符串,又要求逐个输入?的主要内容,如果未能解决你的问题,请参考以下文章