『壹』 用c語言編程!!
#include <stdio.h>
#include <string.h>
int find(char a[][20],int n,char *s)
{
int i;
for(i=0;i<n;++i)
if(strcmp(a[i],s)==0)
return 1;
return 0;
}
int main()
{
char list[][20]={"192.168.1.1", "10.192.66.72", "10.199.88.132", "192.168.1.1", "1.192.168.163"};
int i;
for(i=0;i<sizeof(list)/sizeof(list[0]);++i)
{
if(find(list+i+1,sizeof(list)/sizeof(list[0])-i-1,list[i])&&!find(list,i,list[i]))
{
puts(list[i]);
}
}
return 0;
}
『貳』 用c語言編寫
#include<stdio.h>
voidfun(intn){
inti,j;
for(i=1;i<=n;i++){ for(j=1;j<=i;j++){
printf("*");
}
printf(" ");
}
for(i=n;i>=1;i--){
for(j=i;j>=1;j--){
printf("*");
}
printf(" ");
}
}
intmain(){
fun(5);
return0;
}
『叄』 用C語言編寫這個程序
#include<stdio.h>
#include<string.h>
intmain(){
chars[40];
chart[40];
charr[100];
inta=0;
intlens=0;
intlent=0;
scanf("%s",s);
scanf("%s",t);
lens=strlen(s);
lent=strlen(t);
a=strcmp(s,t);
if(a==0){
printf("Twostringsareequal. ");
}elseif(a>0){
strcpy(r,s);
strcpy(r+lens,t);
strcpy(r+lens+lent,"end.");
}else{
strcpy(r,t);
strcpy(r+lent,s);
strcpy(r+lent+lens,"end.");
}
printf("%s ",r);
return0;
}
『肆』 用C語言編程
代碼文本:
#include "stdio.h"
int main(int argc,char *argv[]){
double s,py;
printf("Please enter your monthly salary... py=");
if(scanf("%lf",&py)==1 && py>0){
s=(py-5000)*0.03*12;
printf("Should pay personal income tax totaled %.2f yuan in 2025. ",s);
}
else
printf("Input error, exit... ");
return 0;
}
註:起征5000元/月,36000元/月以下稅率3%。
『伍』 c語言是用什麼語言編寫的匯編嗎
C語言源自Ken Thompson發明的B語言,而 B語言則源自BCPL語言。
1967年,劍橋大學的Martin Richards對CPL語言進行了簡化,於是產生了BCPL(Basic Combined Programming Language)語言。
1972年,美國貝爾實驗室的 D.M.Ritchie 在B語言的基礎上最終設計出了一種新的語言,他取了BCPL的第二個字母作為這種語言的名字,這就是C語言。
(5)用c語言編寫擴展閱讀
C語言編譯器:
GCC,GNU組織開發的開源免費的編譯器
MinGW,Windows操作系統下的GCC
Clang,開源的BSD協議的基於LLVM的編譯器
Visual C++:: cl.exe,Microsoft VC++自帶的編譯器
C語言集成開發環境:
Code::Blocks,開源免費的C/C++ IDE
CodeLite,開源、跨平台的C/C++集成開發環境
Dev-C++,可移植的C/C++IDE
C-Free
Light Table
Visual Studio系列
『陸』 用C語言編寫
#include<stdio.h>
main()
{
int a[100],i,j,s=0,n=0,m=0;
for(i=0;i<100;i++)
{
scanf("%d",&a[i]);
if(a[i]<0)
break;
}
j=i;
for(i=0;i<j;i++)
{
if(a[i]<60)
n++;
if(a[i]>=80)
m++;
s=s+a[i];
}
s=s/(j-1);
printf("%d %d %d\n",s,n,m);
getch();
}
大哥,你那句以 以負分作為輸入結束的標志什麼意思,我不太懂哎!
『柒』 用c語言編寫一個程序
應該多給幾個例子,n=10的時候如何處理?得到10,110,210,1210等等?
若是這樣的,試試下面程序:
/*
用c語言編寫一個程序:對於一個自然數n(n<=50),統計具有下列數字的個數,
並輸出所有符合條件的數字:自然數n,在n的左邊加上一個自然數,
但該自然數不能超過原數的一半;繼續按此規則進行處理,直到不能加自然數為止。
例如當n=6時,符合條件條件的是:6,16,26,36,126,136共6個;
當n=5時,符合條件的是:5,15,25,125.(0也是自然數,所以要加上本身)。。。
*/
#include
<stdio.h>
#include
<stdlib.h>
int
g_count=0;
void
fun(int
n,int
d,int
b)
{
int
i;
printf("%8d
",d);
g_count++;
if(g_count%8==0)
printf("\n");
for(i=1;i<=n/2;i++)
{
fun(i,i*b+d,b*10);
}
}
void
result(int
n)
{
int
t=n,d=n,b=10;
printf("result:\n");
g_count=0;
while(t>=10)
{
t/=10;
b*=10;
}
fun(n,d,b);
printf("\ntotal
%d
numbers\n\n",g_count);
}
int
main()
{
int
n;
printf("input
n(n<=50):\n");
while(scanf("%d",&n)!=EOF)
{
if(n>=0&&n<=50)
result(n);
printf("input
n(n<=50):\n");
}
return
0;
}
我這,若是放開n的限制,n=200的時候,計算花掉20多秒吧,總共205658個。
n=300的話,算了幾分鍾都沒結束。估計也得使用long
long數據類型了。使用遞歸不是最快的,重復計算多。
網路推薦也不求真相?有誤導了吧。
對於樓主新補充的提升,我的程序是這樣做的,滿足你的要求。
『捌』 用C語言編寫
#include <stdio.h>
int Fib(int n)
{
if(n<3)
return 1;
return Fib(n-1)+Fib(n-2);
}
int main()
{
int i;
unsigned long sum;
for(i=1,sum=0;i<25;++i)
sum+=Fib(i);
printf("%lu ",sum);
return 0;
}
『玖』 用c語言編程
程序就是讀取文件到數組,再將數組進行排序,最後寫入文件。
讀寫文件流程:fopen獲取文件流(根據讀寫需求,選擇參數,使用完必須調用fclose函數關閉),fscanf讀取文件內容,fseek控制文件流指針,fprintf寫入文件。
選擇排序:每個循環周期選出一個最值,交換一次。
下面是代碼(數組為動態數組):
#include <stdio.h>
#include <malloc.h>
int maxLen;//數組長度
int *read2Nums(char path[]);//讀取
int write2File(int *nums,char path[]);//寫入
void showNums(int *nums);
int px(int *nums,int flag);//選擇排序flag=1升序,flag=0降序
int main()
{
int *nums=NULL;
char rPath[]="c:\000.dat",wPath[]="c:\rank.dat";
if(!(nums=read2Nums(rPath))) return 1;
showNums(nums);
printf("數組升序排列: ");
if(px(nums,1)==-1) return 1;
showNums(nums);
printf("數組降序排列: ");
if(px(nums,0)==-1) return 1;
showNums(nums);
printf("寫入到文件路徑%s下(存在覆蓋,不存在新建) ",wPath);
if(write2File(nums,wPath)==-1) return 1;
printf("寫入成功! ");
return 0;
}
void showNums(int *nums)
{
int i;
if(nums) for(i=0,printf("文件內容: ");i<maxLen;printf("%d ",nums[i]),i++);
printf(" ");
}
int px(int *nums,int flag)
{
int i,j,n,temp;
if(!nums) return -1;
for(i=0;i<maxLen-1;i++)
{
n=i;
for(j=i+1;j<maxLen;j++)
{
if(flag && nums[n]>nums[j]) n=j;
if(!flag && nums[n]<nums[j]) n=j;
}
temp=nums[i],nums[i]=nums[n],nums[n]=temp;
}
return 1;
}
int write2File(int *nums,char path[])
{
int i;
FILE *fp=NULL;
if(!nums) return -1;
if(!(fp=fopen(path,"w"))) return -1;
//fseek(fp,SEEK_END);
for(i=0;i<maxLen;i++)
fprintf(fp,"%d ",nums[i]);
fclose(fp);
return 1;
}
int *read2Nums(char path[])
{
int *nums=NULL,*temp=NULL,cnt=0;
FILE *fp=NULL;
maxLen=10;
if(!(fp=fopen(path,"r"))) return NULL;
nums=(int *)malloc(sizeof(int)*maxLen);
if(!nums) return NULL;
while(fscanf(fp,"%d",&nums[cnt++])!=-1)
if(cnt==maxLen)//數組長度不夠擴展(每次擴展10長度)
{
maxLen=maxLen+10;
temp=(int *)realloc(nums,sizeof(int)*maxLen);
if(temp) return NULL;
nums=temp;
}
if(--cnt<maxLen)//函數結束前,刪除多餘地址,減少內存佔用
{
maxLen=cnt;
temp=(int *)realloc(nums,sizeof(int)*maxLen);
if(!temp) return NULL;
nums=temp;
}
fclose(fp);
return nums;
}