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

c語言程序驗證

發布時間: 2023-01-19 14:32:09

1. c語言編寫一個密碼驗證程序。

#include<stdio.h>
#include<conio.h>
voidmain()
{
charexp1='1',exp2='2',exp3='3';//預期值
charch1,ch2,ch3;
ch1=getch();
printf("*");

ch2=getch();
printf("*");

ch3=getch();
printf("* ");
if(ch1==exp1&&ch2==exp2&&ch3==exp3)
{
printf("歡迎進入系統 ");
}
else
{
printf("密碼輸入錯誤,請退出 ");
}
}

2. 怎麼用C語言編程驗證哥德巴赫猜想

哇,這個問題已經被擱置4年了,我看到了就來答一下吧(雖然可能已經沒人感興趣了)

首先,聽說哥德巴赫猜想已經被證明了,也就是不存在不成立的情況了,(可點擊鏈接
http://tieba..com/p/542673904)

然後是問題本身,如果真有不符合的,可以在for(m=3;m<=k-3;m++)這個循環後面判斷一下是否是循環到了盡頭,即是否m>k-3,如果到了盡頭都不符合,那就可以輸出不符合了;
至於全部不符合的情況,由於前面已經逐項輸出,已經列印的事實已經無法改變,因此就無法只輸出說該范圍內所有數都不符合,若真的要達到那種效果,可以把你要printf的先用fprintf函數打到臨時創建的文件里,然後最後根據判斷不符合的個數決定全部列印還是列印一條。總之是用文件讀寫是一種方法。

最後呢,如果說還要改進的話,有兩點可以改進下——1,我從老師那裡聽來判斷素數的條件可以再縮小一點,也就是文中的y=x/2,可以改為 y=sqrt(x)【因為sqrt(x)的平方=x,如果小於y的整數不符合,那麼大於y的數也不會符合】;

2,類似於第一點 for(m=3;m<=k-3;m++)條件可改為m<=k/2;【理由同1】。

呃,就是這樣了,不過4年前應該提問者是大一現在應該畢業了吧~哈哈

3. C語言如何學習,編寫的程序如何驗證它的正確性

剛學C語言要抓住幾個重要的知識點,一個是三大結構,二是數組,三是函數,四是指針,然後結構體,最後把學生管理系統寫出來就差不多了,至於編寫程序的正確性,可以通過調試,推薦vc6.0,調試很不錯,可以隨時看某個變數的值是怎樣變化的,進而查出問題的根源,對學習很有幫助。

4. 請問怎樣設計一個C語言程序驗證歌德巴赫猜想

以下的驗證程序可以驗證一個區間范圍內的所有不小於6的偶數是否符合歌德巴赫猜想。

運行示例:
./gdbh 6 20

運行結果:
6 = 3 + 3
8 = 3 + 5
10 = 3 + 7
12 = 5 + 7
14 = 3 + 11
16 = 3 + 13
18 = 5 + 13
20 = 3 + 17

驗證程序如下:

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <limits.h>

int is_prime(int num)
{
int i;
int num2;
num2 = (int)(sqrt(num) + 0.1);
//assume num is a odd, and >= 3;
for (i = 3; i <= num2; i+= 2)
{
if ((num % i) == 0)
return 0;
}
return 1;
}

int main(int argc, char **argv)
{
int first_num, last_num, num, left_num, right_num;
if (argc < 2)
{
fprintf(stderr, "Usage: %s <first_num> [<last_num>]\n", argv[0]);
return 1;
}
first_num = atoi(argv[1]);
if (argc > 2)
last_num = atoi(argv[2]);
else
last_num = first_num;
if (first_num < 6)
first_num = 6;
if ((first_num % 2) == 1)
first_num++;
if (first_num < 0 || last_num == INT_MAX)
{
fprintf(stderr, "Error: overflow!\n");
return 1;
}
for (num = first_num; num <= last_num; num+=2)
{
int num2 = num/2;
for (left_num = 3; left_num <= num2; left_num+=2)
{
right_num = num - left_num;
if (is_prime(left_num) && is_prime(right_num))
{
break;
}
}
if (left_num <= num2)
{
printf("%d = %d + %d\n", num, left_num, right_num);
}
else
{
printf("Error: the guess is wrong!\n");
return 1;
}
}
return 0;
}

5. C語言密碼驗證問題(程序設計求改)

1 b[8] 定義一個數組變數b,佔用8個位元組

你想要從鍵盤輸入8個字元,通過gets函數接收數據。

但是,gets內部是這么乾的:

不管你輸入幾個字元,都要在末尾補一個''

從鍵盤接收了8個字元放入數組b以後,b就被占滿了,補的0就順序放在了數組b的外邊。恰好,數組b的外面就是數組a,補的0擠佔了數組a的第一個位元組。

然後無論怎麼比較,這兩個數組都是不等的,結果就是wrong

-----------

把數組b的空間定義的大一點,比如b[1000],要定義的足夠大,讓鍵盤怎麼輸入都占不滿。

6. c語言密碼驗證程序,要求輸入密碼是顯示星號

下面程序示意如何輸入和驗證passwd.
假定已知蜜碼 是1234,存在 char password[50] 里。
輸入和驗證。

#include <stdio.h>
#include <stdlib.h>
int main()
{
char p[50];
char password[50]="1234";
int i=0;

printf("type your password:\n");
while ( i < 50 ){
p[i] = getch();
if (p[i] == '\r') break;
if (p[i] == '\b') { i=i-1; printf("\b \b"); } else {i=i+1;printf("*");};
}
p[i]='\0';
if ( strcmp(password,p)==0) printf("\nThe passwd is right!\n");
else printf("\n You typed wrong password:%s",p);

return 0;
}

7. 用C語言編寫一個密碼驗證程序

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

typedef struct
{
long number; //用戶編號 6位
char name[20]; //用戶名
char password[8]; //用戶密碼
int power; //許可權判斷 1 為管理員2為普通用戶
} user;
user yh[100]={100000,"gavin","gavine",1,100001,"wnag","wangf",2};
int length = 2;

int checkuser(long num, const char *nm, const char *pwd)
{
int i;
for (i = 0; i < length; ++i)
{
if (yh[i].number == num && !strcmp(yh[i].name, nm) && !strcmp(yh[i].password, pwd))
{
if (1==yh[i].power)
return 1;
else
return 2;
}
}
}

void main()
{
printf("%d\n", checkuser(100000, "gavin", "gavine"));
}

8. c語言驗證

你想干什麼?

9. C語言密碼驗證的程序

#include<stdio.h>
void main()
{ int i,s;
for ( i=0;i<3;i++ )
{ scanf("%d",&s);
if ( s==12345 ) { printf("Welcome!\n"); break; }
else if ( i==3 ) printf("Sorry!\n");
else printf("Error!\n");
}
}

10. 如何用C語言編程驗證哥德巴赫猜想

#include x0dx0avoid main( )x0dx0a{x0dx0a int i, j, k, IsPrime;x0dx0a for(i = 4; i <= 100; i += 2) /*偶數i從4到100*/x0dx0a {x0dx0a for(j = 2; j <= i / 2; j++) /* 將j從2到i/2進行測試 */x0dx0a {x0dx0a for(k = 2, IsPrime = 1; (k <= j / 2) && IsPrime; k++) /*判斷j是否為素數*/x0dx0a if(j % k == 0) IsPrime = 0;x0dx0a if(IsPrime) { /*如果j是素數*/x0dx0a for(k = 2, IsPrime = 1; (k <= (i - j) / 2) && IsPrime; k++) /*判斷i-j是否是素數*/x0dx0a if((i - j) % k == 0) IsPrime = 0;x0dx0a if(IsPrime) /*如果i-j也是素數,則找到了i的一個解,將其輸出,下一個偶數i*/x0dx0a {x0dx0a printf("%d = %d + %d\t", i, j, i - j);x0dx0a break;x0dx0a }x0dx0a }x0dx0a }x0dx0a }x0dx0a}x0dx0a除了printf與main外,沒有用到其他任何的函數,樓主不妨試一試。