Ⅰ c语言 :如何建立文本文件,编程把文本文件中的字符串逆序输出
文本文件使用windows记事本就可以建立,每个字符串一行,用回车换行就行。
程序代码:
#include<stdio.h>
intmain()
{FILE*fp;
intk,i=0,j;
charstr[1024][20];//可以存放1024个串,每个串小于20个字符
if((fp=fopen("D:\dat.txt","r"))==NULL)//文本文件使用“r”打开读入,文件在D的根目录下
{ printf("error");//如果打开文件失败就输出error
return0; }
while(!feof(fp))//读入文件内容,直到文件结束
{fscanf(fp,"%s",str[i++]);}//二维数组每行一个字符串
fclose(fp);//关闭文件
for(k=i-1;k>=0;k--)//从最后一个字符串开始输出
for(j=strlen(str[k])-1;j>=0;j--)//从每个串的最后一个字符开始,输出到第一个字符结束
{printf("%c",str[k][j]);//倒序输出str记录的文件内容
}
printf(" ");
system("pause");
}
文本文件的内容:
abc
sdf
efghij
klmn
opqrst
uvwxyz
输出结果如图
Ⅱ 简单C语言编程
1。#include <iostream>
using namespace std;
int main()
{
int i;
for(i=0;i<=100;i++)
{
if(i%4==0&&i%9==0)
cout<<i<<endl;
}
return 0;
}
2。
#include <iostream>
using namespace std;
int main()
{int a,b,c,d;
cin>>a>>b>>c;
d=c;
c=b;
b=a;
a=d;
cout<<a<<endl<<b<<endl<<c<<endl;
return 0;
}
3。#include <fstream>
#include <iostream>
using namespace std;
int main()
{
char a[90];
ofstream outfile("your_file.txt",ios::out);
cin.getline(a,90);
outfile<<a;
return 0;
}
4。
#include <iostream>
using namespace std;
int main()
{
char c[80];
cin.getline(c,80);
int i=0,j=0;
while(c[i]!='\0')
{
if(c[i]>=65&&c[i]<=90)
i++;
j++;
}
cout<<j<<endl;
return 0;
}
5。
#include <iostream>
using namespace std;
struct student
{
char name[50];
int score;
};
int main()
{
student a[5];
int i;
for(i=0;i<=4;i++)
{
cin>>a[i].name>>a[i].score;
}
FILE *fp;
fp=fopen("data1.txt","w");
for(i=0;i<=4;i++)
{
fprintf(fp,"%s\n",a[i].name);
fprintf(fp,"%d\n",a[i].score);
}
fclose(fp);
return 0;
}
Ⅲ 在c语言编程中如何实现程序对文本文件中字符串进行替换及生成新的文本文件
我以前刚学C++的时候写过一个相似的程序,如果你要的是纯C语言下的编程,那么你就参考一下,这个算法的原理是一样的,即读入一个字符就显示出来。当然你也可以考虑其他实现方式。这个C++的程序中,和C语言区别的主要是有些输入和输出不太一样。还有system("pause")这个是调用系统暂停功能,可能在TC等编译环境下不能使用,可以考虑使用getch()替换。至于system("cls")是清屏。
相关功能函数为Display_text(),
#include<iostream>
#include<fstream>
#include <iomanip>
#include<windows.h>
using namespace std;
#define MaxSize 65535
int tag[100]; //匹配关键字的字符下标,设定最多找到100个关键字
typedef struct
{
char data[MaxSize]; //记录字符值
int len; //保存有效字符串长度
}SqString;
void MainMenu(); //显示主菜单
void Select_function(char op); //功能选择
void Display_text(); //显示本文内容
void Count_ch(); //统计字符数,空格数,行数
void Search_KeyWord(); //检索关键字
void Replace_KeyWord(); //替换关键字
void index(SqString s,SqString t); //简单匹配算法(BF)
void SetColor(unsigned short ForeColor,unsigned short BackGroundColor); //颜色函数
int main()
{
MainMenu();
return 0;
}
void MainMenu() //显示主菜单
{
char op;
cout<<"I——打开文本文件\n";
cout<<"T——统计\n";
cout<<"S——检索\n";
cout<<"R——替换\n";
cout<<"Q——退出\n\n";
cout<<"请选择:";
cin>>op;
Select_function(op);
}
void Select_function(char op) //功能选择
{
switch(op)
{
case 'i':
case 'I':Display_text();break;
case 't':
case 'T':Count_ch();break;
case 's':
case 'S':Search_KeyWord();break;
case 'r':
case 'R':Replace_KeyWord();break;
case 'q':
case 'Q':exit(0);
default:cout<<"输入错误,请重新选择"<<endl;
system("pause");system("cls");
MainMenu();
break;
}
}
void Display_text() //显示本文内容
{
int i=0;
char c,ch[150];
cout<<"请输入文件名:"<<endl;
cin>>ch;
system("cls");
ifstream infile;
infile.open(ch,ios::in);
if(!infile)
{
cerr<<"Open file error!"<<endl;
system("pause");system("cls");
MainMenu();
}
while(infile.get(c))
{
cout<<c;
i++;
if(i>=1000&&c=='\n'||i>=1500)
{
cout<<endl<<endl;
system("pause");system("cls");
i=0;
}
}
infile.close();
SetColor(11,8);
cout<<endl<<"文本内容结束!"<<endl;
SetColor(7,0);
system("pause");system("cls");
MainMenu();
}
void Count_ch() //统计字符数,空格数,段落数
{
int i=0,j=0,k=0;
char c,ch[150];
cout<<"请输入文件名:"<<endl;
cin>>ch;
system("cls");
ifstream infile;
infile.open(ch,ios::in);
if(!infile)
{
cerr<<"Open file error!"<<endl;
system("pause");system("cls");
MainMenu();
}
while(infile.get(c))
{
i++;
if(c==' ')j++;
if(c=='\n')k++;
}
infile.close();
SetColor(11,8);
cout<<"字符数:"<<i<<endl;
cout<<"空字符数"<<j<<endl;
cout<<"段落数(回车次数)"<<k<<endl;
SetColor(7,0);
system("pause");system("cls");
MainMenu();
}
void Search_KeyWord() //检索关键字
{
int i=0,j=0,k=0;
char c,ch[150],kw[50];
SqString s,t;
cout<<"请输入文件名:"<<endl;
cin>>ch;
system("cls");
ifstream infile;
infile.open(ch,ios::in);
if(!infile)
{
cerr<<"Open file error!"<<endl;
system("pause");system("cls");
MainMenu();
}
cout<<"请输入关键字:";
cin>>kw;
cout<<endl;
while(infile.get(c)&&i<MaxSize)
{
s.data[i]=c;i++;
}
s.len=i;
infile.close();
for(i=0;kw[i]!='\0';i++)
t.data[i]=kw[i];
t.len=i;
index(s,t);
if(tag[0]==-1)cout<<"无此关键字"<<endl;
else
{
for(i=0;i<=s.len;i++)
{
if(i==tag[j])
{
for(;i<tag[j]+t.len;i++)
{
SetColor(10,8);
cout<<s.data[i];
SetColor(7,0);
}
j++;
}
else cout<<s.data[i];
k++;
if(k>=1500&&s.data[i]=='\n'||k>=2000)
{
cout<<endl<<endl;
system("pause");system("cls");
k=0;
}
}
SetColor(11,8);
cout<<endl<<endl<<"文本内容结束!"<<endl;
SetColor(7,0);
}
system("pause");system("cls");
MainMenu();
}
void Replace_KeyWord() //替换关键字
{
int i=0,j=0,k=0;
char c,ch[150],kw[50],nkw[50];
SqString s,t,nt;
cout<<"请输入文件名:"<<endl;
cin>>ch;
system("cls");
ifstream infile;
infile.open(ch,ios::in);
if(!infile)
{
cerr<<"Open file error!"<<endl;
system("pause");system("cls");
MainMenu();
}
cout<<"请输入关键字:";
cin>>kw;
cout<<endl;
while(infile.get(c)&&i<MaxSize)
{
s.data[i]=c;i++;
}
s.len=i;
infile.close();
for(i=0;kw[i]!='\0';i++)
t.data[i]=kw[i];
t.len=i;
index(s,t);
if(tag[0]==-1)cout<<"无此关键字"<<endl;
else
{
cout<<"请输入新的字符替代原关键字:"<<endl;
cin>>nkw;
for(i=0;nkw[i]!='\0';i++)
nt.data[i]=nkw[i];
nt.len=i;
for(i=0;i<=s.len;i++)
{
if(i==tag[j])
{
for(int n=0;i<tag[j]+nt.len;i++,n++)
{
s.data[i]=nt.data[n];
SetColor(10,8);
cout<<s.data[i];
SetColor(7,0);
}
j++;
}
else cout<<s.data[i];
k++;
if(k>=1500&&s.data[i]=='\n'||k>=2000)
{
cout<<endl<<endl;
system("pause");system("cls");
k=0;
}
}
SetColor(11,8);
cout<<endl<<endl<<"文本内容结束!"<<endl;
SetColor(7,0);
}
fstream outfile(ch,ios::out);
if(!outfile)
{
cerr<<"Open file error!"<<endl;
system("pause");system("cls");
MainMenu();
}
for(i=0;i<=s.len;i++)
{
outfile<<s.data[i];
}
outfile.close();
system("pause");system("cls");
MainMenu();
}
void SetColor(unsigned short ForeColor,unsigned short BackGroundColor) //颜色函数
{
HANDLE hCon=GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hCon,(ForeColor%16)|(BackGroundColor%16*16));
}
void index(SqString s,SqString t) //简单匹配算法(BF)
{
int i=0,j=0,k=0;
h0: while(i<s.len&&j<t.len)
{
if(s.data[i]==t.data[j])
{
i++;j++;
}
else
{
i=i-j+1;j=0;
}
}
while(j>=t.len)
{
tag[k]=i-t.len;
k++;
i++;j=0;
goto h0;
}
if(k==0)tag[0]=-1;
}
Ⅳ 怎么用文本文档编程C语言
在工作场所,能够引起领导者的注意对自己的发展道路非常重要。如果您想升职并提高薪水,那完全取决于领导者的意思。
1、领导对你不满的几种特征
如果发生以下几种情况,则说明您的领导者已经开始憎恨您,您必须认真对待您。
1.1有礼貌
如果您和领导者之间的关系以前相对正常,突然之间,他对您很有礼貌,说话有礼貌,并且有礼貌地做事。
有时可能是巧合,但如果次数增加,则可能是有意的。您必须清楚。这可能是领导者暗示您的信号,而他开始对您不满意。
1.2寻求细节
您平时的工作是认真而实用的,而领导者对您更放心,但是最近您对工作有很多要求,挑剔错误和追求细节。
您必须了解这是一个非常糟糕的信号,表明他对您有意见。请及时进行调整。
1.3刁难
如果领导为您安排一些您不喜欢的工作或您不擅长的工作,并且设定了过高的目标,让您留下来加班等等,那么作为部门负责人,每个人都应该一起工作,表现出色与部门的员工保持良好的关系,但是当领导对您的举止如此时,您必须反思自己是否做错了什么。
因此,如果您的领导者开始变得冷漠,敷衍,礼貌,谨慎并且使您感到困难,那么请注意。这可能是您不满意的先兆。
Ⅳ c语言如何编程
C语言编程如何快速实现
在我们初次学习C语言的时候,总想着快速的实现编译过程。那么C语言编程究竟是如何实现的呢,当然是要通过自己喜欢的编译器来编译完成,那么今天就为大家介绍C语言编程是如何快速的实现。
1. 首先我们下载一款适合C语言的编译器,今天为大家讲解的C语言编译器为CodeBlocks,该编译器没有太过复杂,很符合初学者,简单上手快。
Ⅵ 用文本文档编写的一个c语言程序应该如何运行
使用C编译器编译为可执行文件。
常见的编译器有MSC、VC、TC、BC、BCB、GCC、GC等等。
C语言是不能解释运行的,必须先编译为可执行文件。
不过早前听说有可解释运行的C环境,好象还是国产的,可以搜索下。
Ⅶ c语言编程(文件部分)跪求!!! 急!!!
1,创建的文件是空文件,没有内容。只能是打开已有文件。
FILE *fp;
char c;
fp=fopen("string.txt","r");
while(c=fgetc(fp))
{
printf("%c",c);
}
2.
FILE *in;
FILE *out;
in = fopen("string.txt","r");
out = fopen("backup.txt","w");
while(!feof(in))
{
fprintf(out,"%c",fgetc(in));
}
3.
struct stu
{
int m1;
int m2;
int m3;
}
struct stu std[6];
int arr1,arr2,arr3;
void getmark()
{
int i;
for(i=1;i<6;i++)
{
printf("input the %d student's mark1:");
scanf("%d",std[i].m1);
printf("input the %d student's mark2:");
scanf("%d",std[i].m2);
printf("input the %d student's mark3:");
scanf("%d",std[i].m3);
}
}
void cal()
{
int i;
int sum=0;
for(i=1;i<6;i++)
{
sum+=std[i].m1;
}
arr1=sum/5;
for(i=1;i<6;i++)
{
sum+=std[i].m2;
}
arr2=sum/5;
for(i=1;i<6;i++)
{
sum+=std[i].m3;
}
arr3=sum/5;
}
void output()
{
FILE *out;
int i;
out = fopen("stud","w");
for(i=1;i<6;i++)
{
fprintf(out,"the %d student's mark:%3d%3d%3d\n",i,std[i].m1,std[i].m2,std[i].m3);
}
fprintf(out,"%5d%5d%5d",arr1,arr2,arr3);
}
main()
{
getmark();
cal()
output();
}
Ⅷ C语言程序编写
C语言使用 Xcode。Xcode 是由Apple官方开发的IDE,支持C、C++、Objective-C、Swift等
Ⅸ c语言怎么编写
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
char fun(char *a,char *b)
{
char *t;
strcpy(t,a);
strcpy(a,b);
strcpy(b,t);
}
struct st{
char a[6][20];
};
int main()
{
struct st s[111];
int n,x[111],k=0,ts,sum=0;
scanf("%d",&n);
printf("学号 姓名 数学 物理 英语 计算机 ");
for(int i=0;i<n;i++)
{
sum=0;
for(int j=0;j<6;j++)
{
scanf("%s",s[i].a[j]);
if(j!=0&&j!=1)
{
sum+=atoi(s[i].a[j]);
}
}
x[k++]=sum/3;
}
for(int i=0;i<k;i++)
{
for(int j=0;j<k-i-1;j++)
{
if(x[j]>x[j+1])
{
ts=x[j];
x[j]=x[j+1];
x[j+1]=ts;
for(int l=0;l<6;l++)
fun(s[j].a[l],s[j+1].a[l]);
}
}
}
printf("学号 姓名 数学 物理 英语 计算机 平均成绩 ");
for(int i=0;i<n;i++)
{
for(int j=0;j<6;j++)
{
printf("%s",s[i].a[j]);
for(int k=0;k<8-strlen(s[i].a[j]);k++)
printf(" ");
}
printf("%8d ",x[i]);
}
return 0;
}