當前位置:首頁 » 編程語言 » 小偷c語言

小偷c語言

發布時間: 2022-06-26 04:25:52

A. c語言程序設計——警察與小偷

#include <stdio.h>
#define true 1
#define false 0
#define I 9999 /* 無窮大 */
#define N 20 /* 城市頂點的數目 */

int cost[N][N] = {
{0,3,I,I,I,1,I,I,I,I,I,I,I,I,I,I,I,I,I,I},
{3,0,5,I,I,I,6,I,I,I,I,I,I,I,I,I,I,I,I,I},
{I,5,0,4,I,I,I,1,I,I,I,I,I,I,I,I,I,I,I,I},
{I,I,4,0,2,I,I,I,6,I,I,I,I,I,I,I,I,I,I,I},
{I,I,I,2,0,I,I,I,I,7,I,I,I,I,I,I,I,I,I,I},
{1,I,I,I,I,0,1,I,I,I,2,I,I,I,I,I,I,I,I,I},
{I,6,I,I,I,1,0,6,I,I,I,7,I,I,I,I,I,I,I,I},
{I,I,1,I,I,I,6,0,2,I,I,I,3,I,I,I,I,I,I,I},
{I,I,I,6,I,I,I,2,0,8,I,I,I,4,I,I,I,I,I,I},
{I,I,I,I,7,I,I,I,8,0,I,I,I,I,5,I,I,I,I,I},
{I,I,I,I,I,2,I,I,I,I,0,4,I,I,I,3,I,I,I,I},
{I,I,I,I,I,I,7,I,I,I,4,0,3,I,I,I,4,I,I,I},
{I,I,I,I,I,I,I,3,I,I,I,3,0,3,I,I,I,5,I,I},
{I,I,I,I,I,I,I,I,4,I,I,I,3,0,7,I,I,I,2,I},
{I,I,I,I,I,I,I,I,I,5,I,I,I,7,0,I,I,I,I,3},
{I,I,I,I,I,I,I,I,I,I,3,I,I,I,I,0,5,I,I,I},
{I,I,I,I,I,I,I,I,I,I,I,4,I,I,I,5,0,8,I,I},
{I,I,I,I,I,I,I,I,I,I,I,I,5,I,I,I,8,0,6,I},
{I,I,I,I,I,I,I,I,I,I,I,I,I,2,I,I,I,6,0,4},
{I,I,I,I,I,I,I,I,I,I,I,I,I,I,3,I,I,I,4,0}
};
int dist[N]; /* 存儲當前最短路徑長度 */
int v0 = 'A' - 65; /* 初始點是 A */

void main()
{
int final[N], i, v, w, min;

/* 初始化最短路徑長度數據,所有數據都不是最終數據 */
for (v = 0; v < N; v++) {
final[v] = false;
dist[v] = cost[v0][v];
}

/* 首先選v0到v0的距離一定最短,最終數據 */
final[v0] = true;

/* 尋找另外 N-1 個結點 */
for (i = 0; i < N-1; i++) {
min = I; /* 初始最短長度無窮大 */

/* 尋找最短的邊 */
for (w = 0; w < N; w++) {
if (!final[w] && dist[w] < min) {
min = dist[w];
v = w;
}
}
final[v] = true; /* 加入新邊 */

for (w = 0; w < N; w++) { /* 更新 dist[] 數據 */
if (!final[w] && dist[v] + cost[v][w] < dist[w]) {
dist[w] = dist[v] + cost[v][w];
}
}
}

for (i = 0; i < N; i++) { /* 顯示到監視器 */
printf("%c->%c: %2d\t", v0 + 65, i + 65, dist[i]);
}
}
這個應該夠大了

B. 誰能幫我寫一個C程序,抓住小偷

甲說:」乙沒有偷,是丁偷的。」 B+D=1
乙說:「我沒有偷,是丙偷有。」 B+C=1
丙說:「甲沒有偷,是乙偷的。」 A+B=1
丁說:「我沒有偷。」 A+B+C+D=1
其中丁只說了一句話,無法判定其真假,表達式反映了四人中僅有一名是竊賤的條件。
*程序與程序注釋
#include<stdio.h>
void main()
{
int i,j,a[4];
for(i=0;i<4;i++) /*假定只有第i個人為竊賤*/
{
for(j=0;j<4;j++) /*將第i個人設置為1表示竊賤,其餘為0*/
if(j==i)a[j]=1;
else a[j]=0;
if(a[3]+a[1]==1&&a[1]+a[2]==1&&a[0]+a[1]==1) /*判斷條件是否成立*/
{
printf("The thief is "); /*成立*/
for(j=0;j<=3;j++) /*輸出計算結果*/
if(a[j])printf("%c.",j+'A');
printf("\n");
}
}
}
*運行結果
The thief is B. (乙為竊賤。)

C. 誰是小偷 要求編一個程序,幫助判斷哪個人是小偷

#include"stdio.h"
intmain(intargc,char*argv[]){
inta,b,c,d,i,j,t,x;
for(a=1,b=c=d=i=0;i<4;i++){
for(j=0;j<16;j++){
t=(i&1)+(i>>1)&1+(i>>2)&1+(i>>3)&1;
x=i&1?b==0&&d==1:b==1||d==0;
x+=(i>>1)&1?b==0&&c==1:b==1||c==0;
x+=(i>>2)&1?a==0&&b==1:a==1||b==0;
x+=(i>>3)&1?d==0:d==1;
}
if(x==t){
printf("%d%d%d%d ",a,b,c,d);
break;
}
d=c,c=b,b=a,a=0;
}
return0;
}

輸出:

供參考——覺得邏輯上有漏洞似的。

D. 用C語言來解答這道題

#include <stdio.h>

main()
{printf("啥雞把玩意兒!");
return 0;
}

E. 求大神幫忙C語言抓小偷的問題

#include<stdio.h>
#include<stdlib.h>
main()
{
inti;
charwho='A';
intisFound=0;
for(i=0;i<4;i++)
{
intsum=0;
who='A'+i;
if(who!='A')sum++;
if(who=='C')sum++;
if(who=='D')sum++;
if(who!='D'&&who!='B')sum++;
if(sum==3){
printf("thethiefis%c ",who);
isFound=1;
}
}
if(!isFound)
printf("thereisnothief");
}

運行結果:the thief is C

F. C語言解題:

#include <stdio.h>
main()
{
int a,b,c,d; //定義四個變數 用來表示他是否是小偷,為1表示是小偷,0表示不是小偷
int i=1; //定義變數i用來測試4個人的說話情況
a=b=c=d=0;
while((a+b+c+d)!=1) //小偷只有一個 當他們所說的情況之和為1 說明假設是正確的
{
switch(i++)
{
case 1:a=1;c=1;d=1;d=0;break; //設第1個人說的是假話
case 2:a=0;c=0;d=1;d=0;break; //設第2個人說的是假話
case 3:a=0;c=1;d=0;break; //設第3個人說的是假話
case 4:a=0;c=1;d=1;break; //設第4個人說的是假話
default:break;
}
}
printf("第%d人說的是謊話",i-1);

}

G. 用 C語言 編寫程序 (小偷問題) 【是C語言】

#include <stdio.h> int main() { int a,b,c,d; if( !(a=0)&&(c=1)&&(d=1)&&!(d=1)) printf("A是小偷"); else if( (a=0)&&!(c=1)&&(d=1)&&!(d=1)) printf("D是小偷");

H. 好晚的C語言問題

樓主忘記了優先順序,算數運算優先於邏輯運算,樓上的回答正確。還有一個答案是
if((((a!=0)+(c==0)+(d==0)+(d!=0))==3)&&(a+b+c==3))
1,0的表示方法正好相反~~

I. 怎麼樣求解一道關於邏輯推理的題目,用c語言實現。比如破案,比如誰誰在撒謊,比如誰誰說的是真話。

比較費勁,我覺得關鍵是一定要搞清楚 要用什麼條件表達式表示真假的組合。然後套在一堆兒循環里遍歷所有的情況,找個所有條件都滿足的就是了。

J. 小偷程序的特點

1、可以採集80%以上的站點,只需簡單的在後台配置採集替換規則即可。
2、突破圖片防盜鏈系統,可以將目標站的圖片下載到伺服器上面,提高訪問效率,增加網路圖片的收錄。
3、支持靜態生成,即使目標站伺服器出現錯誤,本站依然不受影響(前提是開啟靜態生成和圖片下載到本地伺服器)。
4、授權版可以啟用全國分站功能,自動產生長尾關鍵字,適合全國服務行業和信息查詢服務。
語言代碼1.Perl
#!/usr/bin/perl
# 通過IE瀏覽器中的[查看]->[源文件]可看HTML文件內容。
# perl中可以不通過瀏覽器直接取得HTML文件內容,用的
# 就是perl模塊libWWW
use strict;
use LWP::UserAgent;
use threads::shared;
my $URL = http://*******;
my $ua = new LWP::UserAgent;
$ua->agent('Mozilla/3.0');
my ($address,$params) = split(/?/,$URL);
my $req = new HTTP::Request ('GET',$address);
$req->content_type('applicationn/x-www-form-urlencoded');
$req->content();
my $res = $ua->request($req);
my $content = $res->as_string();
# 此時$content裡面是網頁內容
print $content;
$URL里就是要偷數據的地址。例子中的是本人的小站。偷自己的東西,沒犯法吧?
當然,這個會把網頁內容列印到控制台。所以很多數據或者需要保存的時候,應該用重定向符號輸出到文件。如:
perl yourf ile. pl >a.html
這樣,輸出的結果就保存在文件a.html中了。至於分析的語句,PERL可以使用方便而簡潔的正則,限制於不同程序的不同分析,這里就不寫分析語句了。
2.Active Server Pages - VBScript
ASP版本的小偷程序,也不見得有什麼太大的難度。不過應用了XMLHTTP組件的功能而已,事實上,我也很驚訝ASP寫這個程序的簡短之處:
<%
URL = http://*******
Set objXMLHTTP = CreateObject(Microsoft.XMLHTTP)
objXMLHTTP.Open GET,URL,False
objXMLHTTP.Send
Response.Write Server.HTMLEncode(objXMLHTTP.responseText)
Set objXMLHTTP = Nothing
%>
簡單不?呵呵....
3.Active Server Pages - JScript
從原理來說,這個和VBScript差不多。從語句來說,這個跟VBScript也差不多-畢竟,它們都用同一個組件:
<script language=JScript>
var xmlhttp = new ActiveXObject(Msxml2.XMLHTTP.4.0);
xmlhttp.Open(POST, http://*******, false);
xmlhttp.Send();
alert(xmlhttp.responseText);
</script>
4.Java
Java用來干這個,實在有點大材小用的感覺:
import jav a .io.*;
import jav a. net.*;
public class getURLContent
{
public static void main(String args[]) throws MalformedURLException,IOException
{
URL url = new URL(url address);
BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream()));
while(reader.ready()){
System.out.println(reader.readLine());
}
}
}
5.php
php:
$url='http://網址';
echo file_get_contents($url);
?>
6.Asp. Net
c#:
System .Net.WebClient webclient = new System .Net.WebClient();
webclient.DownloadString(http://*******);
vb.n et:
Dim webclient As New System .Net.WebClient()
webclient.DownloadString(http://*******)
實例
QQ網站上的天氣程序
代碼如下:
<%
On Error Resume Next
Server.ScriptTimeOut=9999999
Function getHTTPPage(Path)
t = GetBody(Path)
getHTTPPage=BytesToBstr(t,GB2312)
End function
首先,進行小偷程序的一些初始化設置,以上代碼的作用分別是忽略掉所有非致命性錯誤,把小偷程序的運行超時時間設置得很長(這樣不會出現運行超時的錯誤),轉換原來默認的UTF-8編碼轉換成GB2312編碼,否則直接用XMLHTTP組件調用有中文字元的網頁得到的將是亂碼。
Function GetBody(url)
on error resume next
Set Retrieval = CreateObject(Microsoft.XMLHTTP)
With Retrieval
.Open Get, url, False, ,
.Send
GetBody = .ResponseBody
End With
Set Retrieval = Nothing
End Function
然後調用XMLHTTP組件創建一個對象並進行初始化設置。
Function BytesToBstr(body,Cset)
dim objstream
set objstream = Server.CreateObject(adodb.stream)
objstream.Type = 1
objstream.Mode =3
objstream.Open
objstream.Write body
objstream.Position = 0
objstream.Type = 2
objstream.Charset = Cset
BytesToBstr = objstream.ReadText
objstream.Close
set objstream = nothing
End Function
Function Newstring(wstr,strng)
Newstring=Instr(lcase(wstr),lcase(strng))
if Newstring<=0 then Newstring=Len(wstr)
End Function
處理抓取回來的數據需要調用adodb.stream組件並進行初始化設置以下即為頁面顯示部分
<%
Dim wstr,str,url,start,over,city
』定義一些需要使用到的變數
city = Request.QueryString(id)
』程序傳回的ID變數(即用戶選擇的城市)賦給id
url=http://appnews-qq-com/cgi-bin/news_qq_search?city=&city&
這里設置需要抓取的頁面地址,當然你也可以直接指定某個地址而不使用變數
wstr=getHTTPPage(url)
獲取指定頁面的全部數據
start=Newstring(wstr, <html>)
這里設置需要處理的數據的頭部,這個變數應視不同情況而設置,具體內容可以通過查看需要抓取的頁面的源代碼來確定。因為在這個程序里我們需要抓取整個頁面,所以設置為頁面全部抓取。注意,設置的內容必須是頁面內容唯一的,不可以重復。
over=Newstring(wstr, </HTML>)
和start相對應的就是需要處理的數據的尾部,同樣的,設置的內容必須是頁面中唯一的。
body=mid(wstr,start,over-start)
』設置顯示頁面的范圍
下面就是動用乾坤挪移+++的時候了,通過replace可以用一些字元替換掉數據中指定的字元。
body = replace(body,skin1,新浪天氣預報 - 麥小偷網路)
body = replace(body,http://appnews-qq-com/cgi-bin/news_qq_search?city,tianqi.asp?id)
本程序中已經完成了替換的工作,如果有其他需要的話可以繼續進行類似的替換操作。
response.write body
%>
替換完需要修改的內容後,就可以把修改的內容顯示在頁面上了。至此程序結束

熱點內容
上傳個人作品 發布:2022-08-18 08:49:38 瀏覽:405
同花順安卓版和ios版有什麼不同 發布:2022-08-18 08:48:31 瀏覽:249
多ip伺服器如何配置udp 發布:2022-08-18 08:48:30 瀏覽:840
python動態抓取 發布:2022-08-18 08:48:22 瀏覽:856
泰文顯示演算法 發布:2022-08-18 08:47:12 瀏覽:284
android電視直播源碼 發布:2022-08-18 08:42:36 瀏覽:119
用騰訊雲搭建國外伺服器 發布:2022-08-18 08:39:46 瀏覽:640
回溯導航演算法 發布:2022-08-18 08:39:45 瀏覽:105
怎麼破解iphone6密碼 發布:2022-08-18 08:38:44 瀏覽:457
vs模糊效果怎麼弄安卓 發布:2022-08-18 08:34:03 瀏覽:642