Ⅰ 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;
}