2017年计算机二级C++实例编程:生成手机号码文本c++程序源码
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/23 14:54:52 计算机等级考试
生成手机号码文本c++程序源码
// makeyqm.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include "stdio.h"
#include "stdlib.h"
int i=1;
int _tmain(int argc, _TCHAR* argv[])
// 主程序_tmain支持unicode别名,定义一个整形argc记录参数个数
//_TCHAR* argv[] 则是所有参数的一个数组
{
if(argc!=3) {
printf("USAGE: MAKEYQM phonefile yqmfile");
return 1;
} //如果发现参数不等于3个就提示USAGE: MAKEYQM phonefile yqmfile
FILE *fp1,*fp2,*fp3;
if( (fp1=fopen(argv[1], "r")) == NULL) {
printf("can't open file: %s", argv[1]);
return 1;
} //如果读取第一个参数为空,就打印不能打开该文件
if( (fp2=fopen(argv[2], "r")) == NULL ) {
printf("can't open file: %s", argv[2]);
return 1;
}//如果读取第二个参数为空,就打印不能打开该文件
char phone[255], yqm[255];
//定义两个数组phone,yqm
while( fgets(phone, 255, fp1) && fgets(yqm, 255, fp2)) {
//当从fp1和fp2流中读取255个字符串数据长度时
phone[strlen(phone)-2]=0;
//把0赋值给phone的长度-2
strcat(phone,".txt");
//把txt的内容追加给到phone结尾处(覆盖dest结尾处的'\0')并添加'\0'.
if( (fp3=fopen(phone,"a")) == NULL ) {
printf("can't open file: %s", phone);
return 1;
} //如果追加打开或创建文本为空
fputs(yqm,fp3); //把fp3的字节流送到yqm参数中
fclose(fp3); //关闭fp3参数内容
printf("%d - Write %s ... OK\n", i, phone);
i++;
} //递增输出phone的字符内容
fclose(fp2); //关闭fp2参数内容
fclose(fp1); //关闭fp1参数内容
printf("Complete!"); //打印完成
return 0; //结束参数
}
文章中涉及到的一些参考
fputs
函数名: fputs
功 能: 送一个字符串到一个流中
用 法: int fputs(char *string, FILE *stream);
程序例:
#include
int main(void)
{
/* write a string to standard output */
fputs("Hello world\n", stdout);
return 0;
}
fp=fopen(filename,"a");
fseek(fp,0,SEEK_SET);//我以为此时光标位置是文件开头,结果发现光标位置是文件的末尾,也就是说“a”只能以追加方式写,只能定位到原文件末尾,而不能是原文件中间的某个位置
“r” 打开文本文件用于读
“w” 创建文本文件用于写,并删除已存在的内容(如果有的话)
“a” 追加,打开或创建文本文件,并向文件末尾追加内容
“r+” 打开文件用于更新(即读和写)
“w+” 创建文本文件用于更新,并删除已存在的内容(如果有的话)
“a+” 追加:打开或创建文本文件用于更新,写文件是追加到文件末尾。
strcat 原型:extern char *strcat(char *dest,char *src);
用法:#include
功能:把src所指字符串添加到dest结尾处(覆盖dest结尾处的'\0')并添加'\0'。
说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。
返回指向dest的指针。
举例:
// strcat.c
#include
#include
main()
{
char d[20]="Golden Global";
char *s=" View";
clrscr();
strcat(d,s);
printf("%s",d);
getchar();
return 0;
}
程序执行结果为:
Golden Global View计算机等级考试