C语言 从磁盘中读取字符串 存入数组

在文本文件中读取字符串,存入数组,但是每次显示的都是 烫烫烫。。。。。。。 程序如下,求帮忙

#include<stdio.h>
#include
<stdlib.h>
#include<string.h>
#include<time.h>
/*随机产生的选择题数目*/
void xuanze(int num)
{

int a[20];
int i,n,m,h,k,t,g;
srand(1);
for(i=0;i<num;)
{
n=rand()%20+1;
m=0;
while((m<i)&&a[m]!=n)
m++;
if(m==i)
{
a[i]=n;
// printf("%d ",a[i]);
i++;
}
}
for(h=0;h<num-1;h++)
{
for(k=0;k<(num-1)-h;k++) /*在每一趟中进行9-j次比较*/
if(a[k]>a[k+1]) /*相邻两个数比较*/
{
t=a[k];
a[k]=a[k+1];
a[k+1]=t;
}
}
printf("随机选择的选择题题号为:");
for(g=0;g<num;g++)
{
printf("%d ",a[g]);

}
printf("\n");
}
/*随机产生的填空题数目*/
void tiankong(int num)
{

int b[20];
int i,n,m,t,k,h,g;
srand(time(0));
for(i=0;i<num;)
{
n=rand()%20+1;
m=0;
while((m<i)&&b[m]!=n)
m++;
if(m==i)
{
b[i]=n;

i++;
}
}
for(h=0;h<num-1;h++)
{
for(k=0;k<(num-1)-h;k++) /*在每一趟中进行9-j次比较*/
if(b[k]>b[k+1]) /*相邻两个数比较*/
{
t=b[k];
b[k]=b[k+1];
b[k+1]=t;
}
}
printf("随机选择的填空题题号为:");
for(g=0;g<num;g++)
{
printf("%d ",b[g]);

}
printf("\n");
}
void main()
{
int num1,num2,m,n,o,p;
// char ch[100];
printf("请输入选择题的个数(0-20):");
scanf("%d",&num1);
printf("请输入填空题的个数(0-20):");
scanf("%d", &num2);
xuanze(num1);
tiankong(num2);
struct xuanzeti
{
char x1[50];

}xuan[3];//={"dsfadfadfa","asdfasdfadfa","asdfasdfasdfas"};

FILE *input0=fopen("c:\\tiankongti.txt","r+");

// FILE *input1=fopen("c:\\xuanzeti.txt","r+");

// FILE *output=fopen("c:\\result.txt","r+");

if(input0==NULL)
{
printf("can't open the file!\n");

}

for(o=0;o<3;o++);
{
if(!feof(input0))
{
fscanf(input0,"%s",&xuan[o]);
}
}

for(p=0;p<3;p++)
printf("%s\n",xuan[p].x1);

fclose(input0);

}

void main()

{

int num1,num2,m,n,o,p;

printf("请输入选择题的个数(0-20):");

scanf("%d",&num1);

printf("请输入填空题的个数(0-20):");

scanf("%d", &num2);

xuanze(num1);

tiankong(num2);

struct xuanzeti

{

char x1[50];

}xuan[3];

FILE *input0=fopen("d:\\a.txt","r+"); //为了测试我改了路径,你自己改回来

if(input0==NULL)

{

printf("can't open the file!\n");

}

for(o=0;o<3&&!feof(input0);o++)   //for循环没有分号

{

    fscanf(input0,"%s",xuan[o].x1);  //这样写才是赋值给xuan[i]的x1

}

fclose(input0);

for(p=0;p<3;p++)

printf("%s\n",xuan[p].x1);

}

温馨提示:答案为网友推荐,仅供参考
相似回答