C语言练习

原创 2012年03月22日 13:20:59

练习1:

#include "stdlib.h"

#include "iostream.h"

#include "stdio.h"

void main()

{FILE *fp1,*fp2;

char ch,f1[10],f2[10];

cout<<"输入文件1的文件名:";

cin>>f1;

if((fp1=fopen(f1,"w+"))==NULL)

{printf("cannot open file\n");

exit(0);}

cout<<"输入文件1的数据内容(以‘#’结束)"<<endl;

ch=getchar();

while(ch!='#')

{fputc(ch,fp1);

ch=getchar();

}

Cout<<"输入文件2的文件名: ";

scanf("%s",b);

if((fp2=fopen(b,"w+"))==NULL)

{

printf("Cannot open file.");

exit(0);

}

rewind(fp1);

while(!feof(fp1))

fputc(fgetc(fp1),fp2);

printf("\n输出文件1:");

rewind(fp1);

while(!feof(fp1))

putchar(fgetc(fp1));

printf("\n输出文件2:");

rewind(fp2);

while(!feof(fp2))

putchar(fgetc(fp2));

printf("\n");

fclose(fp1);

fclose(fp2);

}

}

 

练习2:

#include "stdlib.h"

#include "iostream.h"

#include "stdio.h"

#define FORMAT "%d %s %d %d %d "

#define N 5

struct student

{

       intnum;

       charname[20];

       intscore[3];

}stu[N];

 

void input(char a[])             // a用于接收要写入数据的文件名

{

       inti;

       FILE*fp;

       if((fp=fopen(a,"w"))==NULL)

       {

              printf("Cannotopen file.");

              exit(0);

       }

       cout<<"输入学生的数据:"<<endl;

       for(i=0;i<N;i++)

       {

              scanf(FORMAT,&stu[i].num,stu[i].name,&stu[i].score);

              fprintf(fp,FORMAT,stu[i].num,stu[i].name,stu[i].score);

       }

       fclose(fp);

}

 

void output(char a[],int sn)      // sn用于接收要输出文件中的学生人数

{

 

       inti;

       FILE*fp;

       if((fp=fopen(a,"r"))==NULL)

       {

              printf("Cannotopen file.");

              exit(0);

       }

       cout<<endl<<"输出学生的数据:"<<endl;

       for(i=0;i<sn;i++)

       {

              fscanf(fp,FORMAT,&stu[i].num,stu[i].name,&stu[i].score);

              printf(FORMAT,stu[i].num,stu[i].name,stu[i].score);

              printf("\n");

       }

       fclose(fp);

}

 

int select(char a[],char b[])      // 函数返回值为挑选出来的学生人数

{

       intn,y,z,i;

       cout<<"输入课程号〈1—3〉:";

       cin>>n;

   cout<<endl<<"输入分数段<XX-YY>:";

       cin>>y>>z;

       cout<<y<<z;

       for(i=0;i<5;i++)

       if(stu[i].score[n]>y&&stu[i].score[n]<z)

       returni;

}

 

void main()

{

   int sn;

       input("stu.txt");

       output("stu.txt",N);

       sn=select("stu.txt","range.txt");

       output("range.txt",sn);

 

}

C语言指针练习之矩形法求定积分

/* *Copyright(c) 2016,烟台大学计算机学院 *All rights reserved. *文件名称:test1.cpp *作 者:刘金石 *完成日期:2016年3月...

c语言练习 4-4. 猜数字游戏

猜数字游戏是令系统随机产生一个100以内的正整数,用户输入一个数对其进行猜测,需要你编写程序自动对其与随机产生的被猜数进行比较,并提示大了(“Too big”),还是小了(“Too small”),相...

C语言数据结构练习——停车场管理系统(使用栈和队列)(草稿的草稿)

(代码很乱,也没什么注释,调试信息也没删,真心不是给别人看的东西,等标题上的草稿两字没了再看也不迟。)(注:标题带有“草稿”两字的,质量普遍很低,亲们,就不要浪费时间在上面吧) 题目: 停车场...

c语言练习 11-1. 通讯录的录入与显示(10)

通讯录中的一条记录包含下述基本信息:朋友的姓名、出生日期、性别、固定电话号码、移动电话号码。 本题要求编写程序,录入N条记录,并且根据要求显示任意某条记录。 输入格式: 输入在第1行给出正...

11.21C语言----数组指针练习

今天小结一下对数组指针的学习: 首先看一下做的练习 练习一:输出数组中的全部元素。(下标法) 解: main() {    int a[10],i;     for(i=0;i    a[i]=i;...

《明解C语言》示例代码和练习代码[第2章]

《明解C语言》,作者:柴田望洋。书中第2章的示例代码和练习代码。

C语言指针练习之不等长字符排序

/* *Copyright(c) 2016,烟台大学计算机学院 *All rights reserved. *文件名称:test1.cpp *作 者:刘金石 *完成日期:2016年3月...

C语言学习历程——编程练习3——01

1. 编写函数void count(char a[],char w[][10],int n,int b[])。   功能是:统计w指向的数组中的n个单词在a指向的字符串中各自出现的次数   将...

《明解C语言》示例代码和练习代码[第12章]

《明解C语言》,作者:柴田望洋。书中第12章的示例代码和练习代码。

C语言经典算法100例-067-练习使用指针2

题目:输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。 xi...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C语言练习
举报原因:
原因补充:

(最多只允许输入30个字)