當前位置:首頁 » 編程語言 » c語言程序設計ab
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言程序設計ab

發布時間: 2022-01-16 19:08:11

㈠ 用c語言編程!要求輸入1,輸出A.輸入26,輸出Z。輸入27輸出AA.輸入28輸出AB。也就是一個

此題可以做,代碼如下:

//#include"stdafx.h"//Ifthevc++6.0,withthisline.
#include"stdio.h"
intmain(void){
charR[27]="ZABCDEFGHIJKLMNOPQRSTUVWXY",tmp[10];
intn,i,j;
while(1){
printf("Inputn(intn>0)... n=");
if(scanf("%d",&n)&&n>0)
break;
printf("Error,nmust>0:");
}
for(i=0;n;i++){
if((tmp[i]=n%26)==0)
n--;
n/=26;
}
for(j=i-1;j>=0;j--)
printf("%c",R[tmp[j]]);
printf(" ");
return0;
}

但這並不是二十六進制問題。按照數系基數的定義,基數是多少,就得有多少個符號來表示該進制的數據,但必須包含符號0代表「沒有」。A~Z共26個符號這沒錯,但沒有包含0,且當輸入26時二十六進制應該輸出A0,這題中要求是輸出Z,緊接著27卻要輸出AA,這就不符合二十六進制的定義了……供參考。

㈡ C語言編程 判斷字元串中「ab」字元串數,要求用函數實現

#include <stdio.h>
#include <string.h>
void delete1(char s[],char t[])
{
int i,j,k;
int flag=0;

//一:代碼缺陷
//增加判斷。應該
if(!s || !t)
{
return;
}
if(strlen(s) < strlen(t))
{
return;
}

for( i=j=0; s[i]!='\0';i++)
{
for( k=0; t[k]!='\0';k++)
{
if(s[i+k]==t[k]) flag=1;
else
{
flag=0;
break;
}
}
//二,邏輯錯誤
/*if(flag)
{
s[j++]=s[i+k];
i=i+k+1;
} */
//改成
if(flag)
{
strcpy(&s[i], &s[i + k]);
}

//if(!flag) s[j++]=s[i];
if(!flag) continue;
}
//s[j]='\0';
printf("%s\n",s);
}
main()
{
char str1[255],str2[255];
printf("please input the article:\n");
gets(str1);
printf("please input the words you want to delete:\n");
gets(str2);
delete1(str1,str2);
}

㈢ C語言輸入ababab輸出a=3,b=3怎麼寫這個程序(給定一段ab組成的字元串求連續a,b的段數

C語言輸入ababab輸出a=3,b=3怎麼寫這個程序
這似乎是求這個字元串中a和b的個數分別是多少啊?
(給定一段ab組成的字元串求連續a,b的段數,----這是什麼意思?)
請把題目的全文發一下哈。

㈣ 用C語言編程序輸出a,b,ab,c,d,ac,bc,abc,d,ad,bd,cd,abd,acd,

atmystate用的是遞歸方式實現,我用非遞歸實現如下:

#include<stdio.h>
#include<string.h>
#defineSTR "abcd" //可以換成abcdef或其他字元,只要不超過8

intmain()
{
inti=0;
intj=0;
inttemp=0;
char*p=STR;
intlen=strlen(STR); //不包括末尾的''
inttotalCompose=2<<(len-1);
printf("totalCompose=%d ",totalCompose);
for(i=0;i<totalCompose;++i)
{
temp=i;
for(j=0;j<len;++j)
{
if(temp&0x1)
printf("%c",p[j]);

temp>>=1;
}
printf(" ");
}
return0;
}

㈤ c語言編程。輸入兩個正整數,分別賦給變數a,b,計算ab之間所有整數之和。

#include<stdio.h>
void main()
{
int a,b,sum=0;
printf("請輸入兩個正整數:\n");
scanf("%d %d",&a,&b);
if(a>b)
{
int temp;
temp=a;a=b;b=temp;
}
for(int i=a;i<=b;i++)sum+=i;
printf("兩者之間所有正整數的和為:%d\n",sum);
}

㈥ C語言程序設計:輸入「ab.12cd34_ef567」將字元串中連續的變為一個整型數,即輸出「12

long strtolong(char *str)
{
long data=0;
while(*str)
{
if(*str>='0'&&*str<='9')
{
data=data*10+(*str-'0');
}

str++;
}

return data;
}

㈦ c語言程序設計——計算數值較大的a+b

給你中心演算法
輸入ab
char a[2000]={0},b[2000]={0},c[2000]={0};
這里ab需要先全部賦值為零,要不然長度不一樣的話,會有隨機數干擾計算

gets(a);
gets(b);
球長度
la=strlen(a);
lb=strlen(b);
lc=la>lb?la:lb;
反序,這樣個位才能對應上,個位對個位,百位對百位
strrev(a);
strrev(b);
先計算個位 需要變成int型
c[0]=a[0]+b[0]-96;
再計算中間個位
for(i=1;i<lc;i++)
{
c[i]=a[i]+b[i]-96+c[i-1]/10; 需要加上上一位的進位
c[i-1]%=10; 取出每位的個位
c[i-1]+=48; //變成char型
}
最後處理最高位
while(c[lc-1]>9)
{
c[lc-1]+=38;
c[lc]=49; 變成char的1 兩個數相加最大為9+9+1,1是進位
lc++;
}
最後反序回來,也可以從後面列印
strrev(c);
puts(c)

㈧ c語言編程,輸入ab1c2d3**4↓,輸出1234。

#include<stdio.h>
#include<string.h>

char*GetDigits(charstr[]){
inti=0,j=0;
while(str[i]){
if(str[i]>='0'&&str[i]<='9')
str[j++]=str[i];
++i;
}
str[j]='';
returnstr;
}

intmain(){
chars[81];
gets(s);
printf("%s ",GetDigits(s));
return0;
}

㈨ 定義兩個變數ab如何用c語言編程使兩個變數的值能相互交換

1、首先,就是最基本的知識,寫頭文件,函數聲明,定義變數。

㈩ C語言編程:給出字元串「ABABC」要求輸出「ABABCBABA」

char c[] = {'A','B','A','B','C'};
char d[10];
for(int i=0;i<9;i++)
{
if(i<5)
d[i]=c[i];
else
d[i] = c[8-i];
}
d[10] ='\0';
printf("%s",d);