C語言對字串的操作

2021-07-24 12:00:42 字數 3657 閱讀 1171

重點:c語言中對字串的熟練掌握

1、  字串遍歷:

(1)      計算出字串的長度;

(2)      判斷字串結束標誌』\0』;

2、  陣列一定有確定的空間:

3、  陣列的輸入方法:

(1)      scanf(「%s」,adress);

(2)      gets(adress);

4、  陣列的輸出方法:

(1)      printf(「%s」,adress);

(2)      puts(address);

5、5道簡單程式設計題:(最優方案)

(1)任意輸入乙個字串,統計數字字元的個數;

(2)從鍵盤上輸入任意數字字串,將該字串表示的資料化為整形;

(3)隨機從鍵盤上輸入乙個整數並把它轉化為字串;

(4)隨機輸入乙個字串,輸出連續數字子串的和;

(5)隨機輸入乙個字串,找出最長連續的數字子串的長度;

(1)任意輸入乙個字串,統計數字字元的個數;

#include

#include

int main(void)

inti;

intcount = 0;

charstr1[50];

printf("pleaseinput this strings:");

gets(str1);

for(i= 0; str1[i] != '\0'; i++)

if(str1[i]> 47 && str1[i] < 58)

count++;

printf("count= %d\n",count);

return0;

(2)從鍵盤上輸入任意數字字串,將該字串表示的資料化為整形;

方法一:

#include

#include

#define max_num1024

int main()

int i;

int k = 1;

char src[max_num];

printf("please input numberstring:");

gets(src);

for(i = 0; src[i] != '\0'; i++)

k = k * 10 + (src[i] - '0');

printf("k = %d\n",k);

return 0;

方法二:

#include

#include

#define max_num50

int main()

int i;

int num = 0;

int n = 1;

int sum = 0;

char str1[max_num];

printf("please inputstring:\n");

scanf("%s",str1);

for(i = strlen(str1) - 1; i >= 0;i--)

num= str1[i] - '0';

sum= sum + num * n;

n= n * 10;

printf("sum = %d\n",sum);

return 0;

(3)      隨機從鍵盤上輸入乙個整數並把它轉化為字串;

方法一:

#include

#include

#definemax_num 1024

intmain()

int num;

int len;

int temp;

int i = 0;

char src[max_num];

printf("please input the numbernum:\n");

scanf("%d",&num);

while(num != 0)

src[i] = num % 10 + '0';

num = num / 10;

i++;

src[i] = '\0';

len = strlen(src);

for(i = 0; i < len / 2; i++)

temp = src[i];

src[i] = src[len - i - 1];

src[len - i -1] = temp;

printf("src = %s\n",src);

return 0;

方法二:

#include

#include

#definemax_num 1024

intmain()

int j;

int i = 0;

int num;

int n;

int count = 0;

char src[max_num];

printf("please input the num:\n");

scanf("%d",&num);

n = num;

while(n != 0)

n = n / 10;

count++;

n = num;

while(n != 0)

j= n % 10;

src[count - i - 1] = j + '0';

n = n / 10;

i++;

src[count] = '\0';

puts(src);

return 0;

(4)      隨機輸入乙個字串,輸出連續數字子串的和;

#include

#include

intmain(void)

int i;

int k = 0;

int count = 0;

char str1[50];

printf("please input thisstrings:");

gets(str1);

for(i = 0; str1[i] != '\0'; i++)

while(str1[i] < '9' &&str1 > '0')

i++;

k = k * 10 + str1[i] -'0'

count = count + k;

printf("count = %d\n",count);

return 0;

(5)隨機輸入乙個字串,找出最長連續的數字子串的長度;

#include

#include

#define max 1024

int main()

inti;

intmax = 0;

intcount = 0;

charstr1[max];

printf("pleaseinput the string:\n");

scanf("%s",str1);

for(i= 0; str1[i] != '\0'; i++)

while(str1[i]> '0' && str1[i] < '9')

i++;

count++;

if(max< count)

max= count;

count= 0;

printf("%d\n",max);

return0;

使用C語言對字串操作的分裝

使用c語言對字串操作的分裝 封裝字串函式 include 字串.h 拷貝字串 追加到乙個字串中 char mystrcat char dest,const char copystring else while copystring 0 dest 0 return first addr 在尾部增加字元...

C語言對字串的操作,拼接,複製,逆序輸出

include include 轉化 2019年8月26 void copy char from,char to 字元的複製 return k char stringcat char to,char form 兩個字串拼接一起 char strininverse char pre 逆序排列 for ...

C語言對 不定長 字串陣列的遍歷

一般來說,c語言的陣列的初始化可以通過三種方式 在宣告時使用,如 int a 10 使用memset,memset array,0,sizeof array 用for迴圈賦值c語言的陣列可以這樣宣告,int a 即不用事先計算長度,但是通過初始化的值的數量來自動判斷其長度。另外,對於這種宣告方式,便...