當前位置:首頁 » 編程語言 » c語言字元串滾動兩次
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言字元串滾動兩次

發布時間: 2023-02-28 18:58:37

Ⅰ 如何用c語言製作一個可以在開始屏幕上滾動的字幕

實現滾動字幕:

一、單行滾動,寫一個函數,每次調用讓全局或靜態字元數組向一個方向移位(比如左移,從最右邊一個非0字元開始遍歷,依次覆蓋左邊的一個字元,最左邊的字元被第二個字元覆蓋,最右邊一個非0位變移出的那個字元)。記得保留結束符號0。

二、之後循環列印字元數組。每次使用system("cls");清空控制台顯示。

三、多行滾動,同理,只不過把字元移動覆蓋,改成字元串移動覆蓋。(移動方向的後一行覆蓋前一行,把移動方向第一行內容賦值給最後一行)。

//ps:由於肉眼觀察,移動需要間隔,用Sleep函數,但該函數會讓線程停止,如滾屏間隔期間,還希望其它部分正常運行,需要寫線程。

下面是參考代碼:

#include<stdio.h>

#include <windows.h>

void sScreen(char str[],int len,int f);//len:內容長度,不包含結束符號。f=1向左移動。f=0向右移動;

int main()

{

char str[]="I LOVE YOU";

while(1)

{

printf("%s ",str);

sScreen(str,10,0);

Sleep(1000);

system("cls");

}

return 0;

}

void sScreen(char str[],int len,int f)

{

int i;

char c;

if(f)

{

c=str[0];

for(i=0;i<len-1;i++)

str[i]=str[i+1];

str[len-1]=c;

}

if(!f)

{

c=str[len-1];

for(i=len-1;i>0;i--)

str[i]=str[i-1];

str[0]=c;

}

}

Ⅱ c語言 輸入若干行字元串,行數不確定,以連敲兩次回車結束輸入。然後輸出與輸入相同字元串

這個應該滿足要求
你可以先試試
#include <stdio.h>
int main()
{
char s;
char p;
s = 0;
while(p=getchar())
{
if(p=='\n'&&s==p)
break;
s = p;
putchar(p);
}
return 0;
}

Ⅲ C語言程序里輸出字元串只有一遍,但運行時怎麼就2遍了

//程序有錯,交換兩處代碼後排除!
//下面是正確的程序,回答見後!
#include <stdio.h>
void main()
{
int i,j;
char chars[5][7];
char *p[5]={chars[0],chars[1],chars[2],chars[3],chars[4]};
for(i=0;i<=4;i++)
{ printf("請輸入字元串%d:",++i);
i--;//代碼提前
scanf("%s",chars[i]); /*chars[i]改成p[i時,程序運行時有錯誤,為什麼*/

}
for(i=0;i<=4;i++)
{
printf("字元串%d:",++i);
--i;//代碼提前
printf("%s\n",*(p+i));
}
getch();
}
//chars[i]改成p[i]時,程序改正後,運行不會有錯誤,因為chars[i]與p[i]等價!
//語句中的7是表示字元串長度,每個字元串可以輸入6個字元,
//最後一個用於存放'\0'

Ⅳ C語言中字元串的處理

strncmp函數【返回值】若str1與str2的前n個字元相同,則返回0;若s1大於s2,則返回大於0的值;若s1 若小於s2,則返回小於0的值。----網路 所以這個的意思就是如果b【0】與a【la-testlen】開始比較testlen個元素,如果相等if就成立 因為!非零==0 !0==1